<?php
try{
    include '../ini.php';
    /*         thông tin liên lạc       */    
  
    if(empty($_POST['data']['name'])){
        throw new Exception('Vui lòng bạn nhập tên');
    }
    $_POST['data']['name']=$dt_xl_security->xss_clean($_POST['data']['name']);
    $check_name=$dt_xl_users->read_name($_POST['data']['name']);
    if($check_name != NULL){
        throw new Exception('Tên này đã tôn tại. Vui lòng chọn tên khác');
    }
    if(empty($_POST['data']['birth_day'])){
        throw new Exception('Vui lòng bạn chọn ngày sinh');
    }
    $_POST['data']['birth_day']=$dt_xl_security->xss_clean($_POST['data']['birth_day']);
    if($_POST['data']['gender']!=0 && $_POST['data']['gender']!=1){
        throw new Exception('Vui lòng bạn chọn lại giới tính');
    }
    if(!filter_var($_POST['data']['email'],FILTER_VALIDATE_EMAIL)){
        throw new Exception('Email chưa  hợp lệ');
    }
    $_POST['data']['email']=$dt_xl_security->xss_clean($_POST['data']['email']);
    $check_email=$dt_xl_users->read_email($_POST['data']['email']);
    if($check_email != NULL){
        throw new Exception('Email này đã tồn tại. Vui lòng kiểm tra lại email');
    }
    if(empty($_POST['data']['identity_card'])){
        throw new Exception('Vui lòng nhập số chứng minh nhân dân');
    }
    $_POST['data']['identity_card']=$dt_xl_security->removeSQLI($_POST['data']['identity_card']);
    if(!is_numeric($_POST['data']['phone']) || (strlen($_POST['data']['phone']) > 12) || (strlen($_POST['data']['phone']) < 10)){
        throw new Exception('Sô điện thoại không hợp lệ');
    }
    $_POST['data']['phone']=$dt_xl_security->removeSQLI($_POST['data']['phone']);
    if(empty($_POST['data']['address'])){
        throw new Exception('Vui lòng nhập địa chỉ để giao dịch với bạn');
    }
    $_POST['data']['address']=$dt_xl_security->xss_clean($_POST['data']['address']);
    /*         tạo tai khoản     */     
    if(empty($_POST['data']['account'])){
        throw new Exception('Vui lòng nhập tên tài khoản của bạn');
    }
    $_POST['data']['account']=$dt_xl_security->xss_clean($_POST['data']['account']);
    $check_account=$dt_xl_users->read_account($_POST['data']['account']);
    if($check_account != NULL){
        throw new Exception('Vui lòng chọn lại tên tài khoản khác');
    }
    if(empty($_POST['data']['password'])){
        throw new Exception('Chưa nhập mật khẩu');
    }
    $_POST['data']['password']=$dt_xl_security->xss_clean($_POST['data']['password']);
    if(empty($_POST['data']['password_confirmed'])){
        throw new Exception('Chưa xác nhận mật khẩu');
    }
    $_POST['data']['password_confirmed']=$dt_xl_security->xss_clean($_POST['data']['password_confirmed']);
    if($_POST['data']['password_confirmed'] != $_POST['data']['password']){
        throw new Exception('Xác nhận mật khẩu chưa đúng. Vui lòng nhập lại');
    }
    $avatar=isset($_FILES['image']['name'])?$_FILES['image']['name']:'';
	$avatar=addslashes(stripslashes($avatar));
    $_FILES['image']['size']=$_FILES['image']['size']/1024;
    $arr_image=array('image/gif','image/jpeg','image/png','image/wbmp','image/xbm');
    if($avatar!=''){
        $type=mime_content_type($_FILES['image']['tmp_name']); // tránh bị đổi đuôi file
        if(in_array($type,$arr_image) === false){
			throw new Exception('Không đúng định dạng cho phép của image');
		}
		if($_FILES['image']['error']!= 0){
			throw new Exception('Xảy ra lỗi trong quá trình truyền tải image');
		}		
        # bắt lỗi kích thước hình không cho vào data  tool crop_image
        
		if($_FILES['image']['size']>900 || $_FILES['image']['size']<38){
		  throw new Exception('Kích thước định dạng không đúng chuẩn của image');
			
		}
        $explode =explode('.',$avatar);
        $avatar =$dt_xl_security->vn_str_filter($_POST['data']['name']).'.'.$explode[count($explode) -1];
    }
    if($_POST['data']['news_admin']!=0 && $_POST['data']['news_admin']!=1){
        throw new Exception('Vui lòng bạn chọn lại cách nhận tin từ quản trị');
    }
    if($_POST['data']['news_member']!=0 && $_POST['data']['news_member']!=1){
        throw new Exception('Vui lòng bạn chọn lại cách nhận tin từ thành viên');
    }
    if($_POST['captcha'] !== $_SESSION['captcha']['code']){
        throw new Exception('Mã bảo vệ không đúng. Vui lòng nhập lại');
    }
    $_POST['data']['image']=$avatar;
    $_POST['data']['password']=md5($_POST['data']['email'].md5($_POST['data']['password']));
    $_POST['data']['password_confirmed']=md5($_POST['data']['email'].md5($_POST['data']['password_confirmed']));
    $_POST['data']['active']=0;
    $_POST['data']['code_active']=md5($_POST['data']['email'].rand(10000,99999));
    $_POST['data']['day_time']=date('Y-m-d H:i:s',time());
    $_POST['data']['ip']=$_SERVER['SERVER_ADDR'];
    $data=$_POST['data'];
    $registered=$dt_xl_users->insert_user($data);
    if($registered === FALSE){
        throw new Exception('Đã xảy ra lỗi trong quá trình đăng ký. Vui lòng kiểm tra lại.');
    }
    $day=image('users');
    if($data['image']!=''){    
    	if(!file_exists($day)){
    		mkdir($day,0755,true);  
    	} else {
            $_FILES['image']=str_replace($_FILES['image']['name'],$avatar,$_FILES['image']);
            crop_image($_FILES['image']['tmp_name'],$day.'/'.$_FILES['image']['name'],600,400);
        }
    }
    /* SEND EMAIL */
    $check_user=$dt_xl_users->check_user($_POST['data']['email']);
    if($check_user == NULL){
        throw new Exception('Người dùng không tồn tại');
    }
    $to_email=$_POST['data']['email'];
    $to_name=$_POST['data']['name'];
    $subject='Activate your new account';
    $content='Xin chào bạn :'.$to_name.'<br />';
    $content.='Cảm ơn bạn đã đăng kí thành viên của website shopbaby.vn'.'<br />'.'Đây là thông tin cá nhân của bạn sau khi đăng ký :'.'<br /><br />';
    $content.='----------------------------'.'<br />';
    $content.='- Họ tên :'.$check_user['user_name'].'<br />';
    $content.='- Tài Khoản :'.$check_user['account'].'<br />';
    $content.='- Ngày Sinh :'.$check_user['birthday'].'<br />';
    if($check_user['gender'] == 0){
        $content.='- Giới tính : Nam'.'<br />';
    }else{
        $content.='- Giới tính : Nữ'.'<br />';  
    }
    $content.='- Địa chỉ :'.$check_user['address'].'<br />';
    $content.='- Chứng minh nhân dân :'.$check_user['identity_card'].'<br />';
    $content.='- Số điện thoại :'.$check_user['phone'].'<br />';
    $content.='Để sử dụng tài khoản, bạn cần phải kích hoạt nó bằng cách bấm vào liên kết dưới đây: <br /><br />';
    $content.=DOMAIN.'/kich-hoat/tai-khoan/'.$_POST['data']['code_active'].'<br />';
    $content.='----------------------------';
    $from_name='Shop Baby';
    send_gmail($to_email,$to_name,$subject,$content,$from_name);
    /*END SEND_MAIl*/
    $dbh=NULL;
    unset($_SESSION['data']);
    $_SESSION['msg']='Vui lòng vào gmail để kich hoạt tài khoản';
    $_SESSION['type_msg']='success';
    header('Location: /');
}catch(Exception $e){
    $dbh=NULL;
    $_SESSION['data']=$_POST['data'];
    $_SESSION['msg']=$e->getMessage();
    $_SESSION['type_msg']='error';
    header('Location: registered.html');
}